// pages/userInfo.js
var util = require('../../utils/util.js');
var api = require('../../config/api.js');
var user = require('../../services/user.js');
var app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    userId: null,
    userInfo: {}
  },

  /**
   * 生命周期函数--监听页面加载
   */
  async onLoad(options) {
    
    let userId = options.userId;
    let userInfo = null;
    if(userId){
      userInfo = await util.request(api.UserPageInfo + '/' + userId)
      .then(function(res) {
        if (res.errno === 0) {
          console.log(res.data);
          return res.data;
        }
        return null;
      })
    } 
    this.setData({
      userId: userId,
      userInfo: userInfo
    });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },
  
  // 昵称输入事件
  onNickNameInput(e) {
    const nickName = e.detail.value;
    this.setData({
      'userInfo.nickName': nickName
    });
  },

  // 手机号输入事件
  onPhoneNumberInput(e) {
    const phone = e.detail.value;
    this.setData({
      'userInfo.phone': phone
    });
  },

  // 提交修改
  submitInfo() {
    const { nickName, phone } = this.data.userInfo;
    // 这里可以添加验证逻辑，比如手机号格式验证
    if (!/^1[3-9]\d{9}$/.test(phone)) {
      wx.showToast({
        title: '手机号格式不正确',
        icon: 'none'
      });
      return;
    }
    // 模拟提交到后端
    wx.showLoading({
      title: '提交中...',
    });
    util.request(api.UserInfoUpdate, this.data.userInfo, 'POST')
    .then(function(res) {
      if (res.errno === 0) {
        console.log(res.data);
        userInfo = res.data;
      }
    });
    setTimeout(() => {
      wx.hideLoading();
      wx.showToast({
        title: '修改成功',
        icon: 'success'
      });
    }, 1000);
  }
})